# _*_ coding:utf-8 _*_
# 开发团队: Mavericks
# 开发人员：Maverick·Ming
# 开发IDE： PyCharm
#   项目名：HelloWorld
#   文件名：3.4 循环语句.py
# 开发时间：2021/3/13 11:33

# 循环语句可以使指定代码块循环指定次数
# 循环语句分为两种 while循环和for循环

# while循环：优先对while后的条件表达式执行求值判断，如果结果为True，则执行循环体
# num = 0
# while num < 10 :
#     num += 1
#     print("num = ",num)

# 练习0 ：狗狗年龄
# print("\n练习0：")
# dog_age = 1
# while dog_age != 0 :
#     dog_age = float(input("请输入狗狗年龄:"))
#     if dog_age <= 0:
#         print("这样的狗狗真的存在吗!")
#     elif dog_age <= 2:
#         print("该狗狗的类人年龄为:", dog_age * 10.5)
#     else:
#         print("该狗狗的类人年龄为:", 2 * 10.5 + (dog_age - 2) * 4)


# 练习1 求100以内所有奇数之和
# print("\n练习1：")
# num = 0
# sum_ = 0
# str_1 = ""
# while num < 100 :
#     num += 1
#     if num % 2 != 0 :
#         sum_ += num
#         str_1 += " + " + str(num)
# print("100以内所有奇数之和sum" + str_1 + " = ", sum_)

# 练习2 求100以内所有7倍数之和，以及个数
# print("\n练习2：")
# num_2 = 0
# sum_2 = 0
# count = 0  #计数器，累计7的倍数的个数
# str_2 = ""
# while num_2 <= 100 :
#     num_2 += 1
#     if num_2 % 7 == 0 :
#         sum_2 += num_2
#         count += 1
#         str_2 += " " + str(num_2)
# print("100以内所有7倍数: ", str_2)
# print("100以内所有7倍数的个数: ", count)
# print("100以内所有7倍数之和 = ", sum_2)

# 练习3 水仙花数是指一个n位数(n>=3),他的每个位上的数字的n次幂之和等于他本身
#      例如：1 ** 3 + 5 ** 3 + 3 ** 3 = 153
# 求1000以内所有的水仙花数"Narcissus_few"
# print("\n练习3：")
# Narcissus_few = 100
# digit = 3    # 判断是几位数
# bit_1 = 0    # 个位数值
# bit_10 = 0   # 十位数值
# bit_100 = 0  # 百位数值
# while Narcissus_few < 1000 :
#     bit_100 = int(Narcissus_few / 100)
#     bit_10 = int(Narcissus_few / 10) - bit_100 * 10
#     bit_1 = Narcissus_few - bit_100 * 100 - bit_10 * 10
#     if Narcissus_few == bit_100 ** digit + bit_10 ** digit + bit_1 ** digit:
#         print(Narcissus_few)
#     Narcissus_few += 1
# print("以上是100 - 1000内所有的水仙花数！")


# 练习4 获取用户输入的任意数，判断其是否是质数
#      质数：只有1和自身两个因数的自然数，即只能被1和和自身整数整除的数
print("\n练习4：")
num = int(input("请输入任意>1的整数："))
i = 2
flag = True
if num <= 1:
    print("输入不规范")
else:
    while flag and i < num:
        # 判断num是否能被i整除
        # 如果能整除，则说明num一定不是质数，然后flag=1，停止循环
        if num % i == 0:
            flag = False
        i += 1
    if flag:
        print("该数为质数！")
    else:
        print("该数非质数！")
